home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tricks of the Mac Game Programming Gurus
/
TricksOfTheMacGameProgrammingGurus.iso
/
Information
/
CSMP Digest
/
volume 1
/
csmp-v1-100.txt
next >
Encoding:
Amiga
Atari
Commodore
DOS
FM Towns/JPY
Macintosh
Macintosh JP
NeXTSTEP
RISC OS/Acorn
Shift JIS
UTF-8
Wrap
Text File
|
1994-12-08
|
42.4 KB
|
1,130 lines
|
[
TEXT/R*ch
]
C.S.M.P. Digest Sun, 31 May 92 Volume 1 : Issue 100
Today's Topics:
Desktop Priority Question
HILITE EDIT TEXT in DITL ? How to ?
naive macsbug question
resource fork size limit?
Request for comment: ER diagramming tools
PBCatSearch by FInfo... HOW?
development environment for both Mac & Windows
Advice Needed for Multimedia Project
The Comp.Sys.Mac.Programmer Digest is moderated by Michael A. Kelly.
These digests are available (by using FTP, account anonymous, your email
address as password) in the pub/mac/csmp-digest directory on ftp.cs.uoregon.
edu. This is also the home of the comp.sys.mac.programmer Frequently Asked
Questions list. The last several issues of the digest are available from
sumex-aim.stanford.edu as well.
These digests are also available via email. Just send a note saying that you
want to be on the digest mailing list to mkelly@cs.uoregon.edu, and you will
automatically receive each new digest as it is created.
The digest is a collection of articles from the internet newsgroup comp.sys.
mac.programmer. It is designed for people who read c.s.m.p. semi-regularly
and want an archive of the discussions. If you don't know what a newsgroup
is, you probably don't have access to it. Ask your systems administrator(s)
for details. (This means you can't post questions to the digest.)
The articles in these digests are taken directly from comp.sys.mac.programmer.
They are not edited; all articles included in this digest are in their original
posted form. The only articles that are -not- included in these digests are
those which didn't receive any replies (except those that give information
rather than ask a question). All replies to each article are concatenated
onto the original article in the order in which they were received. Article
threads are not added to the digests until the last article added to the
thread is at least one month old (this is to ensure that the thread is dead
before adding it to the digests).
Send administrative mail to mkelly@cs.uoregon.edu.
-------------------------------------------------------
From: cml20@cd.amdahl.com (Charles M Levine)
Subject: Desktop Priority Question
Date: 22 Apr 92 17:31:33 GMT
Organization: Amdahl Corporation, Sunnyvale CA
Hi, I got a question:
If I have two identical copies of an application, how does
the desktop (under 6.0.x) know which one to launch and can
you force one to launch rather than the other when double-
clicking on a file. Both applications have the same creator
code, version, and date.
Why am I asking this?
We are setting up a net running KeyServer from Sassafras
Software. This is a concurrent license usage package that
only allows a given number of copies of a program to run
at one time. This requires that an application be "keyed".
When that application is launched, a server machine will
check to see how many licences are in use and either permit
or deny the launch.
Some of the users on the net don't trust the server
(if the server dies, everyone dies) and keep "clean" copies
of the application on their disk. What I would like, is
when a user double-clicks on a file, the keyed version
of the program is launched. If the server is dead, then
the clean version could be launched.
What I've done so far:
First off, I'm not a programmer and I only know enough about
ResEdit to be dangerous. I found that if I use ResEdit on the
clean version and change the creator code using Get Info and
the signature in the BNDL (to keep the correct icon), I'll get
the desired effect once the desktop is rebuilt.
Some one told me that this may not always work because the
creator code that an application gives to a file could either
be hard-coded in the application or default to the applications'
creator code. I am also not too sure what other dangers there
are in changing the code.
If someone has any ideas, comments, or suggestions, I would be
very interested. Also, If anyone knows of any "hack-ware" that
does what I looking for, I would like to know.
Thanks for your time, Chuck
- --
+-----------------------------------------------------------------+
| Chuck Levine cml20@cd.amdahl.com -or- |
| Amdahl Corp. M/S 270 cml20@amail.amdahl.com -or- |
| 1250 E. Arques Ave. Voice: (408) 992-2936 -or- |
| Sunnyvale, CA 94088 FAX: (408) 746-7000 |
+-----------------------------------------------------------------+
+++++++++++++++++++++++++++
From: Jeremiah.Blatz@dartmouth.edu (Jeremiah Blatz)
Date: 30 Apr 92 02:26:28 GMT
Organization: Dartmouth College, Hanover, NH
In article <caCS02Ss10r.01@JUTS.ccc.amdahl.com>
cml20@cd.amdahl.com (Charles M Levine) writes:
> Some of the users on the net don't trust the server
> (if the server dies, everyone dies) and keep "clean" copies
> of the application on their disk. What I would like, is
> when a user double-clicks on a file, the keyed version
> of the program is launched. If the server is dead, then
> the clean version could be launched.
I have a similar problem. The Cosmic Osmo CR-ROM likes Hypercard to
have <2000K of memory to play sounds well, but I don't need nearly that
much in daily use. What I did was put a copy of Hypercard with a low
memory setting on my boot drive, and the 2200K version on another
partition. Whenever I double-click a stack, my Mac opens it with the
Hypercard on my boot drive, and I can just open my other version of
Hypercard when I want to run Cosmic Osmo.
Summery: When you open a document from the Finder, the Mac starts its
searck for the creator application on the boot drive.
Hope this helps,
Jeremiah
---------------------------
Subject: HILITE EDIT TEXT in DITL ? How to ?
From: jordi@sc2a.unige.ch
Date: 28 Apr 92 09:09:45 +0200
Organization: University of Geneva, Switzerland
Hi!
Sorry for this FAQ but I'm new to MAC programming.
I use a DITL in a program I'm writing. The DITL uses 2 Editable Text.
Everything works quiet correctly, but I want the first Edit Text to be
HILITEd by default, just as if I double-clicked on it (or moved to
it with the TAB key).
I'm sure it is possible, but how ?
Is there a way to force the user to type in only 2 digits?
I think I have to write a function to format the entry.
Thanks for any help !
Sincerely,
Steve Jordi
+-------------------------+----------------------------------------------+
| Dpt of Geophysics | Fax: + 41 22 320-5732 |
| University of Geneva | |
| 13, Rue des Maraichers | E-Mail: Internet: jordi@sc2a.unige.ch |
| 1211 GENEVA 4 | Bitnet: jordi@cgeuge52.bitnet |
| Switzerland | Compuserve: 70143,3056 (once a week) |
+-------------------------+----------------------------------------------+
+++++++++++++++++++++++++++
From: paulr@syma.sussex.ac.uk (Paul Russell)
Date: 29 Apr 92 10:03:46 GMT
Organization: University of Sussex
>From article <1992Apr28.090945.834@sc2a.unige.ch>, by jordi@sc2a.unige.ch:
> Hi!
> Sorry for this FAQ but I'm new to MAC programming.
> I use a DITL in a program I'm writing. The DITL uses 2 Editable Text.
> Everything works quiet correctly, but I want the first Edit Text to be
> HILITEd by default, just as if I double-clicked on it (or moved to
> it with the TAB key).
> I'm sure it is possible, but how ?
> Is there a way to force the user to type in only 2 digits?
> I think I have to write a function to format the entry.
>
SelIText(dialog: DialogPtr; item: INTEGER;
startSel, endSel: INTEGER); {A97E} IM I-422
eg:
SelIText(myDialog, kDefaultItem, 0, MAXINT);
Regards,
//Paul
- --
| Paul Russell | "Microsoft MS-DOS 5.0 gives your |
| Dept Experimental Psychology | computer something you'll both |
| University of Sussex, Falmer | love - an extra 45k memory." |
| Brighton BN1 9QG, England | -- Microsoft advertisement |
---------------------------
From: hardin@dino.cad.mcc.com (John Hardin)
Subject: naive macsbug question
Date: 21 Apr 92 23:58:26 GMT
Organization: MCC CAD Program, Austin, Texas
How can I enter macsbug from the finder?
(Go easy on me, I don't have the macsbug manual; so, I can't RTFM!)
- -jwh
- --
John W. Hardin phone: (512)338-3535
MCC email: hardin@mcc.com
3500 W. Balcones Center Dr fax: (512)338-3897
Austin, TX 78759-6509 uucp: ...!cs.utexas.edu!milano!cadillac!hardin
+++++++++++++++++++++++++++
From: hardin@dino.cad.mcc.com (John Hardin)
Date: 22 Apr 92 15:19:01 GMT
Organization: MCC CAD Program, Austin, Texas
*I* originally wrote:
>
> How can I enter macsbug from the finder?
>
Thanks for all of the *quick* responses!
In summary MacsBug is entered from the finder (or the currently
executing program) by pressing the interrupt key, or, for those
WITHOUT interrupt keys (like me and my IIsi), pressing command
<power-key>. Works like a champ!
I was also told of an init (available at sumex) that will enable
command <power-key> for those with interrupt keys.
Thanks again for the helpful information.
- -jwh
- --
John W. Hardin phone: (512)338-3535
MCC email: hardin@mcc.com
3500 W. Balcones Center Dr fax: (512)338-3897
Austin, TX 78759-6509 uucp: ...!cs.utexas.edu!milano!cadillac!hardin
+++++++++++++++++++++++++++
From: lie6@ellis.uchicago.edu (Jonathan A. Lieberman)
Date: 29 Apr 92 22:55:48 GMT
Organization: University of Chicago Computing Organizations
The easiest way to enter Macsbugs from the finder is to install the programmer
's key init, and hit cmd reset. You can also build an FKEY.
Make a new FKEY rsrc and enter the following hex: A9FF 4E75, then install it and use it like any other FKEY. Happy debugging.
---------------------------
From: atau@ccrma.Stanford.edu (Atau Tanaka)
Subject: resource fork size limit?
Date: 22 Apr 92 22:33:24 GMT
Organization: DSG, Stanford University
Is there a limit to how large the resource fork of a HyperCard stack can get?
It has to do with a strange project that involves installing SND resources into
stacks. Like lots. When the stack gets up to 17Meg or so with snds, the Mac
just freezes up...
- --
Atau Tanaka
Center for Computer Research in Music & Acoustics
(CCRMA)
atau@ccrma.stanford.edu
+++++++++++++++++++++++++++
From: k044477@hobbes.kzoo.edu (Jamie R. McCarthy)
Organization: Kalamazoo College
Date: Thu, 23 Apr 1992 14:45:00 GMT
atau@ccrma.Stanford.edu writes:
>Is there a limit to how large the resource fork of a HyperCard stack can get?
>When the stack gets up to 17Meg or so with snds, the Mac
>just freezes up...
Not just stacks, but any file. The resource fork uses 24-bit offsets,
so it can't exceed 16,777,215 bytes.
I'd suggest splitting the sounds into two or more stacks; does "start
using" apply to resources as well as scripts?
- --
Jamie McCarthy Internet: k044477@kzoo.edu AppleLink: j.mccarthy
My coat contained a furnace where there used to be a guy...
+++++++++++++++++++++++++++
From: paul@cthq.UUCP (Paul G. Smith)
Date: 24 Apr 92 20:05:33 GMT
Organization: CommsTalk HQ
In article <1992Apr22.223324.5385@leland.Stanford.EDU> (comp.sys.mac.hypercard,comp.sys.mac.programmer), atau@ccrma.Stanford.edu (Atau Tanaka) writes:
> Is there a limit to how large the resource fork of a HyperCard stack can get?
> It has to do with a strange project that involves installing SND resources into
> stacks. Like lots. When the stack gets up to 17Meg or so with snds, the Mac
> just freezes up...
>
The limit is (I can't remember the exact figure) 2600 or so resources. After
that, the resource manager pops. There's a technical note that documents
the problem. It affects all resource files, not just HyperCard.
Why not split the file up into a few smaller ones, and 'start using' them,
to spread the load a bit?
best regards, Paul
- -------------------------------------
Paul G Smith / CommsTalk HQ
INTERNET: "paul@cthq.uucp" CIX: "pgsmith"
AppleLink: "commstalk.hq" ("commstalk.hq@applelink.apple.com")
tel/fax: + 44 491 574295 (dial 11 on 2nd dial tone for fax)
snail: 40 St Marks Road, Henley-on-Thames, Oxon. RG9 1LW. UK
+++++++++++++++++++++++++++
From: suitti@ima.isc.com (Stephen Uitti)
Date: 29 Apr 92 19:31:10 GMT
Organization: Interactive Systems, Cambridge, MA 02138-5302
In article <D2150057.1s77kb@cthq.UUCP> paul@cthq.uucp writes:
>
>In article <1992Apr22.223324.5385@leland.Stanford.EDU> (comp.sys.mac.hypercard,comp.sys.mac.programmer), atau@ccrma.Stanford.edu (Atau Tanaka) writes:
>> Is there a limit to how large the resource fork of a HyperCard stack can get?
>> It has to do with a strange project that involves installing SND resources into
>> stacks. Like lots. When the stack gets up to 17Meg or so with snds, the Mac
>> just freezes up...
>>
>
>The limit is (I can't remember the exact figure) 2600 or so resources. After
>that, the resource manager pops. There's a technical note that documents
>the problem. It affects all resource files, not just HyperCard.
There is a 16 MB limit to resource files (2**24). Only three bytes
are stored for the length of the resource fork. There's a Technote
that says, "don't abuse the managers". In particular it says that
the resource fork is not a database.
Stephen.
suitti@ima.isc.com
---------------------------
From: zdlc03@trc.amoco.com (Dan L. Cummings)
Subject: Request for comment: ER diagramming tools
Date: 23 Apr 92 13:22:28 GMT
Organization: Amoco Production Company, Tulsa Research
I would like to hear your opinions on Entity-relationship
diagramming tools or on more elaborate CASE tools that include
ER capability.
I would prefer something that runs on the Mac, but I can also consider
Unix if the tool uses X-windows.
Thanks in advance,
Dan <<<< dcummings@trc.amoco.com
+++++++++++++++++++++++++++
From: curreyr@cs.orst.edu (Robert Currey)
Date: 28 Apr 92 18:05:45 GMT
Organization: Oregon State University
In article <1992Apr23.132228.18874@trc.amoco.com>, zdlc03@trc.amoco.com (Dan L. Cummings) writes:
>
> I would like to hear your opinions on Entity-relationship
> diagramming tools or on more elaborate CASE tools that include
> ER capability.
>
> I would prefer something that runs on the Mac, but I can also consider
> Unix if the tool uses X-windows.
>
> Thanks in advance,
> Dan <<<< dcummings@trc.amoco.com
>
>
Look into MetaDesign by MetaSoftware (sorry I don't have the address right
here). It runs on the Mac, MSDos, and X.
They also license their development environment so you can create your own
custom diagram oriented tools.
I reviewed this set of tools a while back but rejected them on the poor
UI they had, but that may have changed since then.
- -Rob
Robert Currey
curreyr@cs.orst.edu
+++++++++++++++++++++++++++
From: mats@katana.abo.fi (Mats Aspn{s IB)
Date: 29 Apr 92 12:09:37 GMT
Organization: Abo Akademi University, Turku, Finland
In article <1992Apr28.180545.28268@CS.ORST.EDU> curreyr@cs.orst.edu (Robert Currey) writes:
>In article <1992Apr23.132228.18874@trc.amoco.com>, zdlc03@trc.amoco.com (Dan L. Cummings) writes:
>>
>> I would like to hear your opinions on Entity-relationship
>> diagramming tools or on more elaborate CASE tools that include
>> ER capability.
>>
>> I would prefer something that runs on the Mac, but I can also consider
>> Unix if the tool uses X-windows.
>
>
> Look into MetaDesign by MetaSoftware (sorry I don't have the address right
> here). It runs on the Mac, MSDos, and X.
>
> They also license their development environment so you can create your own
> custom diagram oriented tools.
Does anybody know what has happened to MetaSoft and Design? We used
Design/OA on a Mac and Design/ML on Sun under X-Windows for about
a year ago, but after that I have not heard anything from them. Is
there a System 7 compatible version of Design for Mac.
Mats Aspnas mats@aton.abo.fi
Abo Akademi University
Dept. of Computer Science
+++++++++++++++++++++++++++
From: cshotton@oac.hsc.uth.tmc.edu (Chuck Shotton)
Date: 29 Apr 1992 15:06:21 GMT
Organization: U. of Texas Health Science Center at Houston
Check out Iconix PowerTools from Iconix Software Engineering. They have a
complete suite of design tools that run across Mac, Unix, and Windows
platforms. The applications all started on a Mac, so they have a familiar
look and feel.
Their ER tool is particularly nice.
Iconix Software Engineering
2800 28th St., Suite 320
Santa Monica CA 90405
---------------------------
From: shall@yoda.eecs.wsu.edu (Sean Hall - CS460)
Subject: PBCatSearch by FInfo... HOW?
Date: 24 Apr 92 17:42:35 GMT
Organization: Washington State University
I am trying to use a faceless app to launch a "regular?" app. I figured the
best way to locate the app is to call PBCatSearch with
ioSearchBits = fsSBFlFndrInfo. Actually, I wnat to search by file and creator
types. The FInfo record has other info in it, however. Can I tell PBCatSearch
to only use fdType and fdCreator and not the other fields? Is this the best way?
Also, how exactly do you tell the app to launch? If you can find the app using
PBCatSearch, you can get its FSSpec. Then you put a pointer to the FSSpec into
the launchAppSpec field of the LaunchParamBlockRec and call _Launch, right?
Is there a way to do this with AppleEvents?
- -Sean
+++++++++++++++++++++++++++
From: resnick@cogsci.uiuc.edu (Pete Resnick)
Date: 24 Apr 92 21:41:10 GMT
Organization: University of Illinois at Urbana
shall@yoda.eecs.wsu.edu (Sean Hall - CS460) writes:
>I am trying to use a faceless app to launch a "regular?" app. I figured the
>best way to locate the app is to call PBCatSearch with
>ioSearchBits = fsSBFlFndrInfo.
If you are searching for an application (i.e. it's type is 'APPL'),
then just use the Desktop Manager routine PBDTGetAPPL, assuming you
are using System 7.
>Also, how exactly do you tell the app to launch? If you can find the app using
>PBCatSearch, you can get its FSSpec. Then you put a pointer to the FSSpec into
>the launchAppSpec field of the LaunchParamBlockRec and call _Launch, right?
The LaunchApplication routine works fine under System 7.
>Is there a way to do this with AppleEvents?
You could send an 'odoc' to the Finder. I would call the
LaunchApplication.
pr
- --
Pete Resnick (...so what is a mojo, and why would one be rising?)
Graduate assistant - Philosophy Department, Gregory Hall, UIUC
System manager - Cognitive Science Group, Beckman Institute, UIUC
Internet: resnick@cogsci.uiuc.edu
+++++++++++++++++++++++++++
From: keith@taligent.com (Keith Rollin)
Date: 25 Apr 92 22:44:58 GMT
Organization: Taligent
In article <1992Apr24.214110.29635@news.cso.uiuc.edu>, resnick@cogsci.uiuc.edu
(Pete Resnick) writes:
>
> shall@yoda.eecs.wsu.edu (Sean Hall - CS460) writes:
>
> >I am trying to use a faceless app to launch a "regular?" app. I figured the
> >best way to locate the app is to call PBCatSearch with
> >ioSearchBits = fsSBFlFndrInfo.
>
What you do is:
- - Set the bit that tells PBCatSearch to honor the FInfo field (like you've
already done: ioSearchBits = fsSBFlFndrInfo).
- - Set the fdType and fdCreator fields of ioSpecBits1 to what you what (i.e.,
'APPL'/'MyAp').
- - Set the proper masks in the FInfo fields of ioSpecBits2. Since you want to
search on fdType and fdCreator, set all the bits in these fields, and clear all
the bits of the other fields.
>
> >Is there a way to do this with AppleEvents?
>
> You could send an 'odoc' to the Finder. I would call the
> LaunchApplication.
This works? Sending an 'odoc' event to an application tells that application to
open the specified document. Since the Finder doesn't have any documents, per
se, I wouldn't have expected this to work.
- --
Keith Rollin
Phantom Programmer
Taligent, Inc.
+++++++++++++++++++++++++++
From: unity@mcl.mcl.ucsb.edu (Pete Gontier)
Date: 26 Apr 92 19:41:16 GMT
In <66094@apple.Apple.COM> keith@taligent.com (Keith Rollin) writes:
>In article <1992Apr24.214110.29635@news.cso.uiuc.edu>, resnick@cogsci.uiuc.edu
>(Pete Resnick) writes:
>> You could send an 'odoc' to the Finder.
>This works?
You're right; it doesn't. Finder existed long before the AppleEvent Manager,
much less anything like a core suite. Finder uses high level events. You
have to send an "open selection" event to do this sort of stuff. Like Resnick,
I'd suggest LaunchApplication first. LA allows you to launch a MacPaint
document into SuperPaint, for example, whereas sending an "open selection"
to Finder for the MacPaint document launches the doc into MacPaint.
- --
Pete Gontier // EC Technology // unity@mcl.ucsb.edu
+++++++++++++++++++++++++++
From: shall@yoda.eecs.wsu.edu (Sean Hall - CS460)
Date: 30 Apr 92 03:08:57 GMT
Organization: Washington State University
[Stuff deleted ...]
>>
>> >Is there a way to do this with AppleEvents?
>>
>> You could send an 'odoc' to the Finder. I would call the
>> LaunchApplication.
>
>This works? Sending an 'odoc' event to an application tells that application to
>open the specified document. Since the Finder doesn't have any documents, per
>se, I wouldn't have expected this to work.
Gosh, I was wondering the same thing. You would think that sending an 'oapp'?
would be the correct thing to do, but, the 'oapp' event doesn't includer a
Descriptor describing which app to open. I guess this is mostly a matter of
design. However, if one wanted to use 'odoc', what do you use for the
item list? An array of zero files?
I did discover the section on masking the finder info. I did think it is a bit
of work to "do it yourself" however. If i understand it right, I can
call the DTPB routine to get the desktop database ID, then
call the DTPB routine to look up my signature.
call the make FSSpec routine to create a fsspec out of the info I got from
DTPBGetAPPL (i think thats the routine)
put the FSSpec into a LaunchParamBlockRec and set other appropriate flags
finally.... call LaunchApplication. Right?
- -Sean
>
>--
>Keith Rollin
>Phantom Programmer
>Taligent, Inc.
+++++++++++++++++++++++++++
From: resnick@cogsci.uiuc.edu (Pete Resnick)
Organization: University of Illinois at Urbana
Date: Thu, 30 Apr 1992 19:15:22 GMT
shall@yoda.eecs.wsu.edu (Sean Hall - CS460) writes:
>[Stuff deleted ...]
>>>
>>> >Is there a way to do this with AppleEvents?
>>>
>>> You could send an 'odoc' to the Finder. I would call the
>>> LaunchApplication.
>>
>>This works?
>Gosh, I was wondering the same thing.
As another poster pointed out, what I should have said in my posting
was 'sope', which is open selection. I had a mild brain slip.
pr
- --
Pete Resnick (...so what is a mojo, and why would one be rising?)
Graduate assistant - Philosophy Department, Gregory Hall, UIUC
System manager - Cognitive Science Group, Beckman Institute, UIUC
Internet: resnick@cogsci.uiuc.edu
---------------------------
From: mlindholm@cc.helsinki.fi
Subject: development environment for both Mac & Windows
Date: 24 Apr 92 20:40:38 GMT
Organization: University of Helsinki
I made this inquiry a few weeks back and didn't get much
response, perhaps because I screwed up my subject field.
Hope this time some more people will have time to answer...
I'd like to know if there are development environments for
making software both for Macintosh and Microsoft Windows,
so that the code written for one system would be compilable
(and runnable) on the other with very little modifications or
as such.
Any help will be greatly appreciated.
Mikko Lindholm
Finnish Geodetic Institute
Dept. of Cartography and GIS
Ilmalankatu 1 A
SF-00240 Helsinki
internet: mlindholm@cc.helsinki.fi
bitnet: mlindhol@finuh.bitnet
+++++++++++++++++++++++++++
From: nevries@accucx.cc.ruu.nl (Nico de Vries.)
Date: 24 Apr 92 21:51:42 GMT
Organization: Academic Computer Centre Utrecht
In <1992Apr24.224038.1@cc.helsinki.fi> mlindholm@cc.helsinki.fi writes:
> I made this inquiry a few weeks back and didn't get much
> response, perhaps because I screwed up my subject field.
> Hope this time some more people will have time to answer...
>
>
> I'd like to know if there are development environments for
> making software both for Macintosh and Microsoft Windows,
> so that the code written for one system would be compilable
> (and runnable) on the other with very little modifications or
> as such.
>
> Any help will be greatly appreciated.
>
>
> Mikko Lindholm
> Finnish Geodetic Institute
> Dept. of Cartography and GIS
> Ilmalankatu 1 A
> SF-00240 Helsinki
>
> internet: mlindholm@cc.helsinki.fi
> bitnet: mlindhol@finuh.bitnet
Two suggestions crossed my mind.
XVT, a library to create interfaces for Mac&Windows (&X&PM&etc)
Zortech C++ seems to be available on both platforms.
Hope this helps.
Nico E. de Vries
- --------------------------------------------------------------------------
USENET: nevries@cc.ruu.nl FIDO : 2:281/708.1
VOICE : +31-3404-24931 (+31-30-316931) FAX : +31-30-312033
BBS : +31-30-341401 (Nico De_vries) COMPUSERVE: coming soon (I hope)
This text reflects MY opinion, not that of my employer (BITECH). O O
This text is supplied 'AS IS', no waranties of any kind apply. |
I am famous for my typostyle so don't bother complaining about it. \_/
"Predicting the future is just as dificult as understanding the past."
+++++++++++++++++++++++++++
From: felciano@medisg.stanford.edu (Ramon M. Felciano)
Date: 27 Apr 92 16:57:01 GMT
Organization: SUMMIT (Stanford Univ. Medical Media and Information
The latest issue of AppleDirect quotes Kirk Loevner, director of the
Apple Developer Group, as saying "MacApp will form the foundation of
Apple's thrust into the cross-platform area. You will see us expand
MacApp to support cross-platform development."
'course this is all just "announced" stuff ;)
Ramon M. Felciano
Associate Director, SUMMIT
Stanford University Medical Media and Information Technologies
+++++++++++++++++++++++++++
From: ssvvss@mixcom.com (Palladio Software)
Date: 27 Apr 92 18:59:27 GMT
Organization: Milwaukee Internet Xchange BBS, Milwaukee, WI U.S.A.
>In <1992Apr24.224038.1@cc.helsinki.fi> mlindholm@cc.helsinki.fi writes:
>> I made this inquiry a few weeks back and didn't get much
>> response, perhaps because I screwed up my subject field.
>> Hope this time some more people will have time to answer...
>>
>>
>> I'd like to know if there are development environments for
>> making software both for Macintosh and Microsoft Windows,
>> so that the code written for one system would be compilable
>> (and runnable) on the other with very little modifications or
>> as such.
>>
>> Any help will be greatly appreciated.
>>
>>
>> Mikko Lindholm
>> Finnish Geodetic Institute
>> Dept. of Cartography and GIS
>> Ilmalankatu 1 A
>> SF-00240 Helsinki
>>
>> internet: mlindholm@cc.helsinki.fi
>> bitnet: mlindhol@finuh.bitnet
C++/Views is portable between Windows, Mac, OS/2 and Motif. C++/Views
was developed by CNS in Minneapolis but was recently sold to Liant.
Douglas Earl
Palladio Software
+++++++++++++++++++++++++++
From: acoles@bwdls59.bnr.ca (Lynda Timmerman)
Organization: BNR Woodline, Ottawa
Date: Tue, 28 Apr 92 14:16:08 GMT
|>
|> XVT, a library to create interfaces for Mac&Windows (&X&PM&etc)
|> Zortech C++ seems to be available on both platforms.
|>
Take a look at the Object Interface Library (OI). The has more functionality
than XVT while still supporting Mac, X11/Motif/Open Look & MS Windows.
You can contact them at-
North America...
Solbourne Computer
1-800-356-8765
1-303-772-3400
Europe...
Solbourne Computer UK
UK 44 793 491333
+++++++++++++++++++++++++++
From: suitti@ima.isc.com (Stephen Uitti)
Date: 29 Apr 92 19:22:01 GMT
Organization: Interactive Systems, Cambridge, MA 02138-5302
In article <1992Apr24.224038.1@cc.helsinki.fi> mlindholm@cc.helsinki.fi writes:
> I'd like to know if there are development environments for
> making software both for Macintosh and Microsoft Windows,
> so that the code written for one system would be compilable
> (and runnable) on the other with very little modifications or
> as such.
On a recent project, we developed an application using C++ using
a cross platform development environment, Mac & Windows. We went
with a C++ windowing library, that was a released product on the
Windows platform, and pre-release on the Mac.
For Windows, we used Borland C++ and Zortech C++. One has a better
debugger, the other a better compiler.
For the Mac, we used MPW C++. This is the only real choice for C++
on the Mac.
For source control we used SCCS on a UNIX box. UNIX was chosen
because both the Mac and Windows could access the data, log in,
etc. We did not have software for either the Mac or Windows that
could act as a proper server to the other. Further, our Macs and
Windows boxes were "scarce resources", whereas we had UNIX boxes
that had spare cycles. Further development Macs & Windows boxes
crashed frequently, due to the debugging cycles. There were
frequent problems with non-text files, such as resource files.
Even DeRes'ed files would have high bits set, making the files
effectively binary files.
Some comments on the adventure:
Our application was mostly user interface. The user interface
for Windows (CUA) differs from the UI on a Mac (HIN + IM).
Thus, there are #ifdef's all over which implement the differences.
There were interesting non-UI problems. We were dealing with
objects that were larger than memory. Under Windows, one can use
virtual memory - unless individual objects are larger than 16 MB (as
ours can be). Under the Mac, we wanted to be able to run under
system 6, so we implemented our own. This could not be ported
to Windows easily.
We were dealing with CDROM drives. The calls were not portable,
and very little code was shared.
We dealt with color pallet management. The Mac has a common
interface with 32 bit Quickdraw. Windows has drivers for all
sorts of screens. Again, nearly no portable code.
In most cases, code was written on one platform, and laboriously
ported to the other platform. Porting takes as long or longer
than writing stuff from scratch. The destination platform
usually suffered from some "look and feel" features from the
source platform. Therefore porting code tends to be of poorer
quality than new code. It takes longer, but it isn't as good.
In many cases, something was written, ported, rewritten, reported,
many times. This leads to poor efficiency.
The class library used took quite a long time to learn. Mac
programmers typically already know how to do the things it could
do.
The Borland C++ & Zortech C++ under Windows can be made to
produce code quickly. MPW C++ can compile a typical file and
link our application in about 4 minutes. It can compile the 60
some odd source files and link the application in about 40
minutes from scratch. This is on a Mac IIfx.
A better compilation environment, Think C, can compile a similar
sized application from scratch in about 4 minutes. It can perform
an incremental compile and place the developer in the debugger in
15 seconds.
They say that C++ allows people to reuse code. In this case, it
would be fair to say that C++ allows people to reuse their mistakes.
Writing reusable library code can be done in ordinary C. It is
difficult. One must plan ahead. One must craft the name space
used for functions, variables and types. One must craft the
calling sequence interface. One must document not only the calls,
but how to call them. One should craft templates to make writing
calls easier.
C++ helps somewhat in writing reusable library code. It helps
limit name space pollution by allowing partitioned name spaces
(classes). C++ does not help craft calling sequences. Object
oriented design helps this somewhat, but certainly not for all
types of tasks. C++ does not help document the calls, how to
call them. In fact, many programmers think their code is so
readable that any such documentation is completely missing from
their code. And templates, which are often ignored as part of
documentation, are also overlooked.
C++, and OOP in general encourage people to write "library code"
the first time around. It does not encourage people to write
reusable code or library quality code.
Summary:
What I currently recommend for cross platform code is this.
Write for one platform first. Write the UI in an OOP language.
Use Think C + TCL, for example for a Mac. Write the engine in
ANSI C. Make it as portable as possible. Design the interface
between the UI and the engine to be as simple as possible. For
example, make the engine be callable from either a GUI or a
command line language. Then port the engine to the new
platform and rewrite the GUI from scratch on that new platform.
With something to look at (the original application), the
new GUI will be easy to write.
If you have multiple people working at the same time, you might
write the engine first, then multiple GUIs.
Stephen.
suitti@ima.isc.com
---------------------------
From: sakelley@euclid.ucsd.edu (Scott Kelley)
Subject: Advice Needed for Multimedia Project
Date: 28 Apr 92 19:46:25 GMT
I'm about to start working on a couple different components of our
multimedia project, and I was hoping to solicit some suggestions from
the net as to how I should proceed.
The project is based in MacroMind director, and most of the work is
done in it. The system is intended to be a stand-alone kiosk-like system
(i.e. no mac-style interface-- the users aren't even supposed to know
it's a mac, even though we don't actually have kiosks to hide the
macs!) :-) The system is (currently) called an "interactive lab manual"
and allows students to do biochemistry lab experiments on the computer.
Now here's the problem: we need two special components: a scientific
calculator and a telnet-compatible terminal emulator. The calculator is
needed so that students can work problems and perform calculations, and
the terminal emulator is needed so students can access a variety of
online databases relevant to biochemistry research.
My challenge is to figure out how to implement these two little
features. We briefly toyed with the idea of using a calculator DA to
solve our calculator problem, but this turned out to be unsatisfactory
for a number of reasons. Likewise, we thought about using something like
NCSA telnet to provide the online access services, but again the
problems came up. What problems? Well, the biggest is that, under system
7, when you launch another application, the MacroMind Director screen
goes away and is replaced by the desktop, which is likely to be
confusing for those people who have never used a computer before. We
want to keep them in OUR environment. Also, we'd like to be able to have
more control over where the windows come up, and so on. Mostly, we'd
like these elements to be cleanly integrated into our environment, and
not just tack on other people's programs.
So, does anybody have any suggestions? I'd like to just find a
scientific calculator XObject and a TCP Terminal emulation XObject, and
use those, but I'm not expecting to find such a thing. (For those who
have never used MacroMind Director, XObjects are similar to XCMD's in
hypercard). Implementing them myself would also be a lot of work (we
need vt100 emulation too!) Can anybody offer any suggestions? Am I
missing an obvious, easy way out? Or do you know where I could find
source code to use as a starting point if I end up having to implement
this myself!?!?!?!
(BTW, we were developing a scientific calculator written entirely in
Director, but that too turned out not to do everything we needed. We did
put together a nice XObject that interfaces Director to SANE, providing
transcendental math functions to Director. But it looks like those will
probably go unused as well...)
Any suggestions, comments, etc. are very welcome! Post or mail.
Thanks,
Scott
- -------------------------------------------------
Scott Kelley, sakelley@ucsd.edu, (619) 534-8560
Multimedia Interactive Learning Laboratory (MILL)
Department of Biology, UC San Diego
- -------------------------------------------------
+++++++++++++++++++++++++++
From: ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University)
Date: 30 Apr 92 00:27:17 GMT
Organization: University of Waikato, Hamilton, New Zealand
n article <32174@sdcc12.ucsd.edu>, sakelley@euclid.ucsd.edu (Scott Kelley)
describes a stand-alone kiosk-like system currently built around MacroMind
Director.
> Now here's the problem: we need two special components: a scientific
> calculator and a telnet-compatible terminal emulator. The calculator is
> needed so that students can work problems and perform calculations, and
> the terminal emulator is needed so students can access a variety of
> online databases relevant to biochemistry research.
My feeling is you're getting a little beyond the capabilities of MacroMind
Director. Have you considered switching to using HyperCard as a base for
the application? I understand you can license some add-on code from MacroMind
for playing Director animations from within HyperCard; alternatively, you
can convert the movies to QuickTime format and use the HyperCard QuickTime
externals from Claris.
> So, does anybody have any suggestions? I'd like to just find a
> scientific calculator XObject and a TCP Terminal emulation XObject, and
> use those, but I'm not expecting to find such a thing. (For those who
> have never used MacroMind Director, XObjects are similar to XCMD's in
> hypercard). Implementing them myself would also be a lot of work (we
> need vt100 emulation too!) Can anybody offer any suggestions? Am I
> missing an obvious, easy way out? Or do you know where I could find
> source code to use as a starting point if I end up having to implement
> this myself!?!?!?!
I don't know of an easy way out, but there is some software around which
will ease at least part of the burden. I suggest you look at the Communications
Toolbox; the core of this is built into System 7, and is available as an
add-on to System 6.0.x. The basic tools include support for multiple serial
port connections, modem connections and VT100 terminal emulation (among other
things), and while they don't come with the System 7 distribution, you can
get them from ftp.apple.com.
You will still have to write something like a HyperCard external which
creates a terminal emulation xwindow, to interface to the terminal emulator
tool. But doing this should be a lot easier than writing your own emulation
code from scratch.
Hope this helps.
Lawrence D'Oliveiro fone: +64-7-856-2889
Computer Services Dept fax: +64-7-838-4066
University of Waikato electric mail: ldo@waikato.ac.nz
Hamilton, New Zealand 37^ 47' 26" S, 175^ 19' 7" E, GMT+13:00
+++++++++++++++++++++++++++
From: sakelley@euclid.ucsd.edu (Scott Kelley)
Date: 30 Apr 92 16:24:31 GMT
In article <1992Apr30.122717.7715@waikato.ac.nz>, ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University) writes:
> n article <32174@sdcc12.ucsd.edu>, sakelley@euclid.ucsd.edu (Scott Kelley)
> describes a stand-alone kiosk-like system currently built around MacroMind
> Director.
>
> > Now here's the problem: we need two special components: a scientific
> > calculator and a telnet-compatible terminal emulator. The calculator is
> > needed so that students can work problems and perform calculations, and
> > the terminal emulator is needed so students can access a variety of
> > online databases relevant to biochemistry research.
>
> My feeling is you're getting a little beyond the capabilities of MacroMind
> Director. Have you considered switching to using HyperCard as a base for
> the application? I understand you can license some add-on code from MacroMind
> for playing Director animations from within HyperCard; alternatively, you
> can convert the movies to QuickTime format and use the HyperCard QuickTime
> externals from Claris.
Yes, I think we're kind of pushing the limits of what Director can do.
For an early prototype of a calculator written entirely in director, I
had to write some XObjects to handle math functions like trigs and logs.
I ended up talking to the lead software engineer on the Director project
to get the info I needed, since passing floating point values to an
external object hadn't even been documented yet.
As far as switching to hypercard, we in fact used hypercard for our
earliest prototypes of the project. We ended up going with Director
because it provides better support for animation, better even than the
interface that lets Director movies be played through hypercard (Things
like having students drag animated items around the screen, and other
stuff like that). Our future plans do include using QuickTime
eventually, but we're waiting for Director 3.1 which will have built-in
QuickTime support. The last sales guy I talked to said it would be out
in another 3-6 months, even though at an alpha-demo of it the MacroMind
Rep told us April. Were not in that big of a hurry, though; that's not
holding us back yet (Otherwise I'd just use the hypercard QuickTime
stuff).
[some stuff deleted from my original post]
>
> I don't know of an easy way out, but there is some software around which
> will ease at least part of the burden. I suggest you look at the Communications
> Toolbox; the core of this is built into System 7, and is available as an
> add-on to System 6.0.x. The basic tools include support for multiple serial
> port connections, modem connections and VT100 terminal emulation (among other
> things), and while they don't come with the System 7 distribution, you can
> get them from ftp.apple.com.
>
> You will still have to write something like a HyperCard external which
> creates a terminal emulation xwindow, to interface to the terminal emulator
> tool. But doing this should be a lot easier than writing your own emulation
> code from scratch.
I've only gotten a few replies so far, but everybody has suggested
checking out the Communications Toolbox. I'll be trying to digest it in
the next couple of days; then I'll see what happens.
>
> Hope this helps.
>
> Lawrence D'Oliveiro fone: +64-7-856-2889
> Computer Services Dept fax: +64-7-838-4066
> University of Waikato electric mail: ldo@waikato.ac.nz
> Hamilton, New Zealand 37^ 47' 26" S, 175^ 19' 7" E, GMT+13:00
I appreciate the suggestions!
Scott
- -------------------------------------------------
Scott Kelley, sakelley@ucsd.edu, (619) 534-8560
Multimedia Interactive Learning Laboratory (MILL)
Department of Biology, UC San Diego
- -------------------------------------------------
---------------------------
End of C.S.M.P. Digest
**********************